/*
 * Texture.h
 *
 *  Created on: 3 janv. 2013
 *      Author: johan
 */

#ifndef TEXTURE_H_
#define TEXTURE_H_

#include <main.h>
#include <string>

namespace ge {

	class Texture {
	public:

		enum TexState{
			EMPTY,
			LOADABLE,
			LOADING,
			LOADED,
		};

		Texture();
		virtual ~Texture();

		void flipX();
		void flipY();

		void linkFile(std::string name); 	//1
		void load();						//2
		void bind();
		void del();

	private:

		TexState state;

		std::string fileName;


		bool xFlipped; 	// retournement /x
		bool yFlipped;		// retournement /y

		ui32 texId; 	// id openGL
	};


} /* namespace ge */
#endif /* TEXTURE_H_ */
